/**
 * @author wudi
 * @argument 修改节点路由信息
 * @version 1.0
 * @class RouteManager
 * @extends Ext.Panel
 * @createTime 2012-7-11
 */
Ext.ns('Ext.RouteManager');
Ext.ns('Ext.EntApp');
Ext.RouteManager.RouteManagerWin=Ext.extend(Ext.Window, {
                goodsStore:null,
                scrNodeId:null,
                destNodeId:null,
                constructor : function(_config) {
				if (_config == null) {
					_config = {};
					
				};   
				Ext.apply(this, _config);
				this.form = new Ext.FormPanel({
					frame : true,
					width : '100%',
					height : 220,    
					frame : true,
					layout : 'column',
					bodyStyle : 'padding-left:5px;padding-top:10px',
					defaults : {
						defaults : {
							xtype : 'textfield',
							anchor : '90%'
						},
						columnWidth : .5,
						layout : 'form',
						style : 'padding:5px'
					},
					items : [{
								items : [{
											xtype:'dicCombo',
											fieldLabel : '开始节点ID',
											name : 'scrNodeId',
											allowBlank : false,
											blankText : '此为必填项',
											maxLength : 18,
											maxLengthText : '字段最长为18位'
										},{
											xtype : 'combo',
											emptyText : '请选择',
											fieldLabel : '节点启用状态',
											name : 'status',
											editable : false,
											triggerAction : 'all',
											mode : 'local',
											store : new Ext.data.SimpleStore({
														fields : ['value', 'text'],
														data : [['1', '启用'],
																['0', '停用']]
													}),
											valueField : 'value',
											displayField : 'text'
										},{
											fieldLabel : '备注',
											name : 'remark',
											allowBlank : true,
											maxLength : 50,
											maxLengthText : '字段最长为50位'
										}]
							}, {
								items : [{
									xtype:'dicCombo',
									fieldLabel : '目标节点ID',
									name : 'destNodeId',
									allowBlank : false,
									blankText : '此为必填项',
									maxLength : 18,
									maxLengthText : '字段最长为18位'
								},{
											fieldLabel : '节点互联编码',
											name : 'nodeRelationId',
											allowBlank : true,
											maxLength : 18,
											maxLengthText : '字段最长为18位'
										},
										{
											fieldLabel : '权重',
											name : 'weight',
											allowBlank : true,
											maxLength : 9,
											maxLengthText : '字段最长为9位'
										}]
							}]
				});
				Ext.RouteManager.RouteManagerWin.superclass.constructor.call(this,
						{
							title : '节点关系信息维护',
							width : 900,
							height : 260,
							layout : 'fit',
							closeAction : 'hide',
							closable : true,
							modal : true,
							items : [this.form],
							frame : true,
							buttons : [{
										text : '清空',
										handler :this.resetForm,
										hidden : this.hideFlag,
										scope : this
									}, 
							        {
										text : '保存',
										handler : this.saveGoodsInfo,
										hidden : this.hideFlag,
										scope : this
									}]
						});
				},
				
			// 导入GridePanel的某项记录
		loadData : function(scrNodeId,destNodeId) {
					
				this.form.getForm().load({
					url : 'routeManager/getNodeRelInfo',
					method : 'post',
					params : {
					scrNodeId : scrNodeId,
					destNodeId : destNodeId
					},
					waitMsg : '正在加载数据...',
					success : function(form, action) {
					    this.form.find('name', 'scrNodeId')[0]
								.setRawValue(action.result.data.scrNodeId);
						this.form.find('name', 'destNodeId')[0]
								.setRawValue(action.result.data.destNodeId);
						this.form.find('name', 'remark')[0]
								.setRawValue(action.result.data.remark);
						this.form.find('name', 'status')[0]
								.setRawValue(action.result.data.status);
						this.form.find('name', 'nodeRelationId')[0]
								.setRawValue(action.result.data.nodeRelationId);
						this.form.find('name', 'weight')[0]
						    	.setRawValue(action.result.data.weight);
					},
					failure : function(response, optionse) {
						Ext.MessageBox.alert('提示', '加载失败！');
					}, 
					scope : this
				});
					
			},
			
			setFlag : function (flag){
				this.flag = flag
//				alert(flag);
//					this.form.find('name', 'flag')[0]
//				    								.setRawValue(flag);
//					
			},
			
		// 清空
	 resetForm : function() {
		this.form.getForm().reset();
	},
	
	
	// 保存修改的信息
	saveGoodsInfo:function(){
	         var store=this.goodsStore;
	         var f = this.flag;
	        if (this.form.getForm().isValid()) {
	        	
	        	if(this.form.find('name','scrNodeId')[0].getValue()==this.form.find('name','destNodeId')[0].getValue()){
	        		Ext.MessageBox.alert('提示', '开始节点不能和结束节点相同！');
	        		return
	        	}
	        	
					   this.form.getForm().submit({
									url : 'routeManager/saveNodeRelInfo',
									method : 'post',
									params : {
						   					flag : f,
						   					scrNodeId :this.form.find('name','scrNodeId')[0].getValue(),
						   					destNodeId:this.form.find('name','destNodeId')[0].getValue(),
						   					remark:this.form.find('name','remark')[0].getValue(),
						   					status:this.form.find('name','status')[0].getValue(),
						   					nodeRelationId:this.form.find('name','nodeRelationId')[0].getValue(),
						   					weight:this.form.find('name','weight')[0].getValue()
										},
									waitMsg : '正在保存数据...',
									success : function() {
										Ext.MessageBox.alert('提示', '保存成功！');
										store.reload();
										this.hide();
									},
									failure : function(response, optionse) {
										Ext.MessageBox.alert('提示', '保存失败！');
									}, 
									scope : this
								});
								}
	}
});